package com.liu.yupao.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.liu.yupao.model.dto.team.TeamAddRequest;
import com.liu.yupao.model.dto.team.TeamQueryRequest;
import com.liu.yupao.model.dto.team.TeamUpdateRequest;
import com.liu.yupao.model.entity.Team;
import com.liu.yupao.model.vo.TeamUserVO;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* @author Administrator
* @description 针对表【team(队伍表)】的数据库操作Service
* @createDate 2025-10-10 22:04:14
*/
public interface TeamService extends IService<Team> {

    //新增队伍
    long addTeam(TeamAddRequest team, HttpServletRequest request);

    //删除队伍
    boolean deleteTeam(Long teamId);

    //查询队伍信息
    List<TeamUserVO> queryTeams(TeamQueryRequest teamQueryRequest,HttpServletRequest request,Boolean isInclude);

    //更新队伍信息
    boolean updateUser(TeamUpdateRequest teamUpdateRequest,HttpServletRequest request);

    //加入队伍
    boolean joinTeam(Long teamId,String password,HttpServletRequest request);

    //退出队伍
    boolean exitTeam(Long teamId, HttpServletRequest request);

    //解散队伍
    boolean releaseTeam(Long teamId, HttpServletRequest request);
}
